/*
 * mhtaggable.h
 *
 *  Created on: 2010-7-14
 *      Author: angelstone
 */

#pragma once

#include "hiberlite.h"

namespace mediahouse {
	class CMHTagContainer {
		friend class hiberlite::access;

		template<class Archive>
		void hibernate(Archive & ar) {
			ar & HIBERLITE_NVP(m_Tags);
		}

	private:
		wxArrayString m_Tags;


	public:
		CMHTagContainer() {

		}

		virtual ~CMHTagContainer() {

		}

		virtual void AddTag(const wxString & tag);
		virtual void RemoveTag(const wxString & tag);
		virtual int HasTag(const wxString & tag);
		virtual void ClearTags();
		virtual int GetAllTags(wxArrayString & tags);
	};
}
